﻿using System;
using System.Collections.Generic;
using System.Runtime.Serialization;
using Citi.EmailSender.Domain;

namespace Citi.EmailSender.WCF.DataContract
{
    [DataContract]
    public class Email
    {
        [DataMember]
        public int ApplicationId { get; set; }
        [DataMember]
        public string ApplicationName { get; set; }
        [DataMember]
        public List<EmailAddress> To { get; set; }
        [DataMember]
        public List<EmailAddress> Cc { get; set; }
        [DataMember]
        public List<EmailAddress> Bcc { get; set; }
        [DataMember]
        public List<EmailAddress> Approvers { get; set; }
        [DataMember]
        public string Subject { get; set; }
        [DataMember]
        public List<Attachment> Attachments { get; set; }
        [DataMember]
        public string SentOnBehalfOfName { get; set; }
        [DataMember]
        public string BodyMessage { get; set; }
        [DataMember]
        public Enums.EmailImportance Importance { get; set; }
        [DataMember]
        public int TemplateId { get; set; }
        //[DataMember]
        //public int EmailId { get; set; }
        [DataMember]
        public string Url { get; set; }
        [DataMember]
        public Dictionary<string, string> Parameters { get; set; }
        [DataMember]
        public DateTime? ScheduleDateTime { get; set; }
        [DataMember]
        public bool? NeedApprovalToSend { get; set; }
    }
}